Modern databases can store data in compound structures. For example, in addition to storing data as integers, float point numbers, characters or strings, a database can store data in compound structures including arrays, maps or user-defined object types. A relational database stores data in columns and rows. A column in a table can have a data type that corresponds to a compound structure. An application program that reads data from the table can retrieve, as a single data item, an object that includes multiple subfields, e.g., subfields of integers, float point numbers, nested objects and so on.